<!--
  引用admin/user/indwx.vue,该组件使用外部引入的组件（Avue表格组件avue-crud），
  奖金模块只想要调用该组件的增加人员和修改人员dialog内容，实现人员增加和修改
  -->

<template>
  <admin-user v-show="false" ref="refAdminUser" @addUpdateOk="handleAddUpdateOk" />
</template>

<script>
import AdminUser from '@/views/admin/user'
import {getDetails} from '@/api/admin/user'
import {getOperRoles} from '@/api/jiangjin/jiangjinryxxb'

export default {
  data() {
    return {
      row: {}
    }
  },
  components: {
    AdminUser
  },
  methods: {
    // 增加人员
    showOperAdd() {
      this.$refs.refAdminUser.$refs.crud.rowAdd()
    },
    // 修改人员
    showOperUpdate(userName) {
      // 分别获取人员信息和人员角色，模拟成组件AdminUser需要的人员修改数据
      // 获取人员信息
      getDetails(userName).then(response => {
        const data = response.data.data
        if (!data) {
          this.$notify.closeAll();
          this.$notify.error('未找到指定的人员')
          return
        }
        this.row = data
        getOperRoles(userName).then((response => {
          const roles = response.data.data
          this.$set(this.row, 'roleList', roles)
          this.$refs.refAdminUser.handleUpdate(this.row,0)
        }))

      })
    },

    handleAddUpdateOk() {
      this.$emit('addUpdateOk')
    }

  }
}
</script>
